package com.itbaizhan.mapper;

import com.itbaizhan.pojo.PageQuery;
import com.itbaizhan.pojo.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface UserMapper {
    List<User> findAll();
    void add(User user);
    void update(User user);
    void delete(int userId);
    User findById(int userId);
    List<User> findByUsernameLike(String username);

    /**
     * 分页查询
     * @param startIndex 开始索引
     * @param pageSize   每页条数
     * @return
     */
    List<User> findPage(int startIndex,int pageSize);

    /**
     * 分页查询
     * @param startIndex 开始索引
     * @param pageSize   每页条数
     * @return
     */
    List<User> findPage1(@Param("startIndex") int startIndex,@Param("pageSize") int pageSize);

    /**
     * 分页查询
     */
    List<User> findPage2(PageQuery pageQuery);

    /**
     * 分页查询
     */
    List<User> findPage3(Map<String,Object> params);

    //查询用户总数
    int findCount();

    void add2(User user);
}
